Don't-care term

In digital logic, a don't-care term is an input-sequence (a series of bits) to a function that the designer does not care about, usually because that input would never happen, or because differences in that input would not result in any changes to the output. By considering these don't-care inputs, designers can potentially minimize their function much more so than if the don't-care inputs were taken to have an output of all 0 or all 1. Examples of don't-care terms are the binary values 1010 through 1111 (10 through 15 in decimal) for a function that takes a BCD value, because a BCD value never takes on values from 1010 to 1111. Don't-care terms are important to consider in minimizing, using Karnaugh maps and the Quine–McCluskey algorithm.

Contents

X value

"Don't care" may also refer to an unknown value in a multi-valued logic system, in which case it may also be called an X value. In the Verilog hardware description language such values are denoted by the letter "X". In the VHDL hardware description language such values are denoted (in the standard logic package) by the letter "X" (forced unknown) or the letter "W" (weak unknown).[1]

An X value does not exist in hardware. In simulation, an X value can result from two or more sources driving a signal simultaneously, or the stable output of a flip-flop (electronics) not having been reached. In synthesized hardware, however, the actual value of such a signal will be either 0 or 1, but will not be determinable from the circuit's inputs.[1]

See also

References

  1. ^ a b David Naylor and Simon Jones (1997). Vhdl: A Logic Synthesis Approach. Springer. pp. 14–15,219,221. ISBN 0412616505. 

External sources